// import com.alibaba.druid.sql.ast.expr.SQLNumericLiteralExpr;
// import com.alibaba.druid.sql.dialect.oracle.visitor.OracleASTVisitor;
// import com.alibaba.druid.sql.visitor.SQLASTVisitor;
#pragma once
#include "../../../../ast/expr/SQLNumericLiteralExpr.h"
#include "OracleExpr.h"

class OracleBinaryDoubleExpr : virtual public SQLNumericLiteralExpr, virtual public OracleExpr
{
public:
  double value;

  OracleBinaryDoubleExpr();

  OracleBinaryDoubleExpr(double value);

  SHAREDOBJECT(OracleBinaryDoubleExpr);
  // @Override
  double getNumber();

  double getValue();

  void setValue(double value);

  // @Override
  void accept0(SQLASTVisitor_ptr visitor);

  void accept0(OracleASTVisitor_ptr visitor);

  // @Override
  int hashCode();

  // @Override
  bool equals(Object_ptr obj);

  // @Override
  void setNumber(double number);

  SQLObject_ptr clone();
};
